<?php
	require("frmCookie.php");
	
	$iOpcion = $_GET[iOpcion];
	
	if(isset($_REQUEST['producto']))
	{
		$idProducto = $_REQUEST['producto'];
	}
	else
	{
		//Cuando entra desde el menu, no le pasa Producto en la URL por eso predetermino el Producto 2, que son los Celulares
		$idProducto = 2;	
	}
?>
<html>
	<head>
    	<?php
		require("frmHeader.php");
		?>
		<script language="javascript" src="scripts/ajax.js"></script>
		<script language="javascript" src="scripts/validar.js"></script>
		<script language="javascript"></script>
	</head>
	<body>
    	<table cellpadding="0" cellspacing="0" align="center" class="tablaPrincipal">
        	<tr>
            	<td align="center">
                	<?php
					require("frmSession.php"); 
					
					//Redirecciona a SINPERMISOS.PHP en caso de no tener permisos
					
					if (!(in_array(35000, $_SESSION[permisos])))
					{
					?>
					  <script language="JavaScript" type="text/javascript">
					  <!--
					  window.location.href = "sinPermisos.php"
					  //-->
					  </script>
					<?php
					}
					$titulo = "Reporte Samsung";
					
					?>
                </td>
            </tr>
            <tr>
            	<td align="center">
                	<?php
					require("frmTitulo.php");
					?>
                </td>
            </tr>
            <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
            	<td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="menuPrincipal">
                    	<tr>
                        	<td>
								<?php
                                require("frmMenu.php");
                                ?>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
                <td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="tituloPantalla">
                    	<tr>
                        	<td align="center">
                            	<p class="texto" align="left"><?php echo $titulo; ?></p>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
             <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
                <td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="estadoPantalla">
                    	<tr>
                        	<td align="center">
                            	<p class="texto" align="left"><?php echo $mensaje; ?></p>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
             <tr>
            	<td height="20">&nbsp;
                	
                </td>
            </tr>
            <tr>
                <td align="center">
                	<table cellpadding="0" cellspacing="0" align="center" class="contenedorPrincipal">
                    	<tr>
                        	<td align="">
                        		<?php
                        		switch($iOpcion)
                        		{
                        			case 1:
                        			{
                				?>
                				<form name="frm" action="excelSamsung.php?iOpcion=2" onSubmit="return validaForm();" method="post">
                					<table>
                                    	<tr style="display:none;">
                                            <td>
                                                *Producto:
                                            </td>
                                            <td>
                                                <select name="producto">
                                                    <?php
                                                    
                                                    $mySQL = "Select * from productos order by nombre";
                                                    $productos = readSQL($mySQL);
                                                    foreach($productos as $producto)
                                                    {
                                                        if($producto['idProducto'] == $idProducto)
                                                        {
                                                            echo "<option value='".$producto['idProducto']."' selected>".$producto['nombre']."</option>";
                                                        }
                                                        else
                                                        {
                                                            echo "<option value='".$producto['idProducto']."'>".$producto['nombre']."</option>";
                                                            
                                                        }
                                                    }
                                                    
                                                    ?>
                                                </select>
                                            </td>
                                        </tr>
                						<tr>
                							<td>Fecha Desde: </td>
                							<td><input type="text" name="txtFechaDesde" size="10" maxlength="10" /></td>
                						</tr>
                						<tr>
                							<td>Fecha Hasta: </td>
                							<td><input type="text" name="txtFechaHasta" size="10" maxlength="10" /></td>
                						</tr>
                						<tr>
                							<td colspan="2" align="center"><input type="submit" name="cmdEnviar" value="Generar" /></td>
                						</tr>
                					</table>
                				</form>
                        		<?php
                        				break;
                        			}
                        			case 2:
                        			{
                        		
		                        		$data = array(
										  array('TEMPORAL', 'SUCURSAL','ESTADO DE COBRO', 'COMENTARIO', 'USUARIO', 'CODIGO ASC', 'Nº ORDEN', 'Tipo De Reparacion', 'Tipo De Defecto','engi_code', 'NOMBRE CLIENTE', 'DIRECCION', 'LOCALIDAD', 'PROVINCIA','region', 'Nº Telefono','zip_code', 'MODELO', 'COND.', 'REP', 'DEF', 'SIN', 'defect block', 'accesory', 'serial', 'IMEI', 'IMEI2', 'Fecha Compra', 'Fecha de Recepcion', 'rent_dt', 'Fecha de Reparacion', 'Fecha de entrega', 'prod_dt', 'dealer', 'labor_cost', 'freight', 'other_amt', 'RECLAMO DEL CLIENTE', 'DETALLE DE LA REPARACION', 'remark', 'loc1', 'PARTE 1', 'CANTIDAD', 'Nº FACTURA', 'loc1', 'PARTE 2', 'CANTIDAD', 'Nº FACTURA', 'loc1', 'PARTE 3', 'CANTIDAD', 'Nº FACTURA', 'loc1', 'PARTE 4', 'CANTIDAD', 'Nº FACTURA', 'loc1', 'PARTE 5', 'CANTIDAD', 'Nº FACTURA', 'loc1', 'PARTE 6', 'CANTIDAD', 'Nº FACTURA', 'loc7(10)', 'material7(18)', 'used7(7)', 'doc7(10)', 'loc8(10)', 'material8(18)', 'used8(7)', 'doc8(10)','loc9(10)', 'material9(18)', 'used9(7)', 'doc9(10)','loc10(10)', 'material10(18)', 'used10(7)', 'doc10(10)','loc11(10)', 'material11(18)', 'used11(7)', 'doc11(10)','loc12(10)', 'material12(18)', 'used12(7)', 'doc12(10)','loc13(10)', 'material13(18)', 'used13(7)', 'doc13(10)','loc14(10)', 'material14(18)', 'used14(7)', 'doc14(10)','loc14(10)', 'material14(18)', 'used14(7)', 'doc14(10)','loc15(10)', 'material15(18)', 'used15(7)', 'doc15(10)', 'tr_no(20)', 'tr_type(1)', 'company(3)', 'language(1)', 'currency(3)', 'status(2)'));
		                        		
		                        		list($dia, $mes, $ano) = split("/", $_POST[txtFechaDesde]);
										$fechaDesde = $ano . "-" . $mes . "-" . $dia;
		                				
		                				list($dia, $mes, $ano) = split("/", $_POST[txtFechaHasta]);
										$fechaHasta = $ano . "-" . $mes . "-" . $dia;
		                        		
		                        		$mySQLOrden = "SELECT O.garantiaservice, ec.nombre as estadocobro, O.*, U.nombre AS USUNOM, U.apellido AS USUAPE, M.nombreFabricante, mxo.codigo as modelo, O.nombrePrecio AS NIVEL, S.nombre AS SUCURSAL, S.direccion AS DIRECCION, S.ciudad AS CIUDAD, S.provincia AS PROVINCIA, S.telefono as telSuc FROM ordenes O LEFT JOIN modelos M ON M.idModelo = O.idModelo LEFT JOIN almacenes A ON A.idAlmacen = O.idAlmacen LEFT JOIN usuarios U ON U.idUsuario = O.idUsuario LEFT JOIN sucursales S ON S.idSucursal = O.idSucursal  LEFT JOIN modelosxoperador mxo on O.idOperador = mxo.idOperador and O.idModelo = mxo.idModelo LEFT JOIN estadoscobro ec on O.idestadocobro = ec.idestadocobro WHERE M.idProducto = $idProducto /*AND O.garantiaservice = 0*/ AND O.idOperador = mxo.idOperador AND O.idModelo IN (SELECT idModelo FROM modelos WHERE idProducto = $idProducto AND idMarca=4) AND O.mantieneGarantia=1 AND O.fechaHoraFin BETWEEN '" . $fechaDesde . " 00:00:00' AND '" . $fechaHasta . " 23:59:59' group by O.idOrden";
										
										//echo $mySQLOrden;
										//exit;
										
		                        		$resultOrden = readSQL("SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;".$mySQLOrden);
										
										foreach($resultOrden as $valueOrden)
										{
											$mySQLMarca = "SELECT * FROM ordenessamsung WHERE idOrden=" . $valueOrden['idOrden'];
			                        		$resultMarca = readSQL($mySQLMarca);
											foreach($resultMarca as $valueMarca)
											{
												$serialNumber = $valueMarca['serialNumber'];
												$tipoReparacion = $valueMarca['tipoReparacion'];
											}
											
											$registro = array();
											if($valueOrden['garantiaservice']==1)
											{
												array_push($registro, "NO REPORTADO");
											}
											else
											{
												array_push($registro, "");
											}
											array_push($registro, strtoupper($valueOrden['SUCURSAL']));
											array_push($registro, strtoupper($valueOrden['estadocobro']));
											array_push($registro, strtoupper($valueOrden['observacionEstadoCobro']));
											array_push($registro, strtoupper($valueOrden['USUAPE'] . " " . $valueOrden['USUNOM']));
											array_push($registro, '6252953');
											array_push($registro, 'G'.strtoupper($valueOrden['idOrden']));
											array_push($registro, strtoupper($tipoReparacion));
											array_push($registro, strtoupper($valueOrden['NIVEL']));
											array_push($registro, '');
											if(trim(strtoupper($valueOrden['nombre'] . " " . $valueOrden['apellido']))=='')
											{
												array_push($registro, 'galander galander');
											}
											else
											{
												array_push($registro, strtoupper($valueOrden['nombre'] . " " . $valueOrden['apellido']));
											}
											array_push($registro, strtoupper($valueOrden['DIRECCION']));
											array_push($registro, strtoupper($valueOrden['CIUDAD']));
											array_push($registro, strtoupper($valueOrden['PROVINCIA']));
											array_push($registro, 'SP');
											if(strtoupper($valueOrden['nroLinea'])=='')
											{
												array_push($registro, strtoupper($valueOrden['telSuc']));	
											}
											else
											{
												array_push($registro, strtoupper($valueOrden['nroLinea']));
											}
											array_push($registro, "00000-000");
											if($valueOrden['modelo'] == '')
											{
												$modelo = "NO COMPLETO";	
											}
											else
											{
												$modelo = $valueOrden['modelo'];
											}
											array_push($registro, strtoupper($modelo));
											array_push($registro, "W");
											
											$mySQLreparaciones = "SELECT R.*, S.nombre AS SINTOMATEXT, A.nombre AS ACCIONTEXT, SXM.codigo AS SINTOMA, FXM.codigo AS FALLA, AXM.codigo AS ACCION, P.codigoFabricante AS PARTE, P.idTipoParte AS TIPOPARTE, tpxm.codigo as codigotipoparte FROM reparaciones R, sintomasxmarca SXM, fallasxmarca FXM, accionesxmarca AXM, partes P, sintomas S, fallas F, acciones A, tipospartesxmarca tpxm WHERE AXM.idProducto = $idProducto AND FXM.idProducto = $idProducto AND SXM.idProducto = $idProducto AND P.idTipoParte = tpxm.idTipoParte AND tpxm.idMarca = 4 AND R.idSintoma = SXM.idSintoma AND SXM.idMarca = 4 AND SXM.idSintoma=S.idSintoma AND R.idFalla = FXM.idFalla AND FXM.idMarca = 4 AND FXM.idFalla = F.idFalla AND R.idAccion = AXM.idAccion AND AXM.idAccion = A.idAccion AND AXM.idMarca = 4 AND R.idParte = P.idParte AND R.idOrden=" . $valueOrden['idOrden'] . " GROUP BY R.idReparacion LIMIT 6 ";
											
											//echo $mySQLreparaciones;
											//exit;
											
											$resultReparaciones = readSQL($mySQLreparaciones);
											//echo $mySQLreparaciones . "<br>";
											//break;
											
											$idAccion = '';
											$idFalla = '';
											$idSintoma = '';
											$sintomaText = '';
											$accionText = '';
											$codigoTipoParte = '';
											
											foreach($resultReparaciones as $valueReparaciones)
											{
												$idAccion = $valueReparaciones['ACCION'];
												$idFalla = $valueReparaciones['FALLA'];
												$idSintoma = $valueReparaciones['SINTOMA'];
												$sintomaText = $valueReparaciones['SINTOMATEXT'];
												$accionText = $valueReparaciones['ACCIONTEXT'];
												$codigoTipoParte = $valueReparaciones['codigotipoparte'];
												break;
											}
											
											array_push($registro, strtoupper($idAccion));
											array_push($registro, strtoupper($idFalla));
											array_push($registro, strtoupper($idSintoma));
											array_push($registro, strtoupper($codigoTipoParte));
											array_push($registro, '');
											array_push($registro, strtoupper($serialNumber));
											array_push($registro, strtoupper($valueOrden['imei']));
											array_push($registro, strtoupper($valueOrden['imei']));
											array_push($registro, strtoupper(str_replace("-", "", substr($valueOrden['fechaActivacionLinea'],0,10))));
											array_push($registro, strtoupper(str_replace("-", "", substr($valueOrden['fechaHoraInicio'],0,10))));
											array_push($registro, '');
											array_push($registro, strtoupper(str_replace("-", "", substr($valueOrden['fechaHoraFin'],0,10))));
											array_push($registro, strtoupper(str_replace("-", "", substr($valueOrden['fechaHoraFin'],0,10))));
											array_push($registro, "");
											array_push($registro, "");
											array_push($registro, "");
											array_push($registro, "");
											array_push($registro, "");
											array_push($registro, strtoupper($sintomaText));
											if(strtoupper($accionText) == 'CAMBIO DE EQUIPO' || strtoupper($accionText) == 'CAMBIO DE PLACA')
											{
												array_push($registro, 'CDU:'.strtoupper($valueOrden['imeiSalida']));
											}
											else
											{
												array_push($registro, strtoupper($accionText));
											}
											array_push($registro, "");
											
											
											foreach($resultReparaciones as $valueReparaciones)
											{
												//$sintomaText = $valueReparaciones['SINTOMATEXT'];
												//$accionText = $valueReparaciones['ACCIONTEXT'];
												//$idSintoma = $valueReparaciones['SINTOMA'];
												$parteId = $valueReparaciones['idParte'];
												//$idFalla = $valueReparaciones['FALLA'];
												//$idAccion = $valueReparaciones['ACCION'];
												$idParte = $valueReparaciones['PARTE'];
												$idTipoParte = $valueReparaciones['TIPOPARTE'];
												$nroFactura = $valueReparaciones['nroFactura'];
												$codigoReferencia = $valueReparaciones['codigoReferencia'];
												$cantidad = $valueReparaciones['cantidad'];
												
												$sqlUbicacion = "SELECT codigo FROM ubicacionesxparte WHERE idParte = " . $parteId . " LIMIT 1";
												$resultUbicacion = readSQL($sqlUbicacion);
												foreach($resultUbicacion as $valueUbicacion)
												{
													$ubicacion = $valueUbicacion[0];
												}
												array_push($registro, strtoupper($ubicacion));
												array_push($registro, strtoupper($idParte));
												array_push($registro, strtoupper($cantidad));
												array_push($registro, strtoupper($nroFactura));
											}
										
											array_push($data, $registro);
										}
		                        		//echo($fede);
		                        		
		                        		// include package
										include 'Spreadsheet/Excel/Writer.php';
										
										// Fecha Hora Inicio
										$fecha = getdate();
										$dia = $fecha[mday];
										$mes = $fecha[mon];
										$ano = $fecha[year];
										$hora = $fecha[hours];
										$minutos = $fecha[minutes];
										$segundos = $fecha[seconds];
										$archivo =  $ano . "-" . $mes . "-" . $dia . "-" . $hora . "-" . $minutos . "-" . $segundos . "Samsung.xls";
										
										// create empty file
										if($_SERVER['SERVER_NAME'] == "localhost")
										{
											$host = "/Users/fede/Sites/galander/informes/";
										}
										else
										{
											$host = "/var/www/html/galander/informes/";	
										}
										$excel = new Spreadsheet_Excel_Writer($host . $archivo);
										
										// add worksheet
										$sheet =& $excel->addWorksheet('Hoja 1');
										
										// create format for header row 
										// bold, red with black lower border
										/*$firstRow =& $excel->addFormat();
										$firstRow->setBold();
										$firstRow->setColor('black');
										$firstRow->setBottom(1);*/
										//$firstRow->setBottomColor('black');
										
										// create format for header column
										// blue with black right border
										/*$firstCol =& $excel->addFormat();
										$firstRow->setBold();
										$firstCol->setColor('black');*/
										//$firstCol->setRight(1);
										//$firstCol->setRightColor('black');
										
										// create format for top left corner
										/*$firstRowCol =& $excel->addFormat();
										$firstRowCol->setBottom(1);*/
										//$firstRowCol->setRight(1);
										//$firstRowCol->setBorderColor('black');
										
										// create format for numeric cells
										$text =& $excel->addFormat();
										$text->setScript(1);
										
										$num =& $excel->addFormat();
										$num->setNumFormat('#');
										
										$imeiF =& $excel->addFormat();
										$imeiF->setNumFormat('000000000000000');
										
										$prodcode =& $excel->addFormat();
										$prodcode->setNumFormat('0000000');
										
										$fecIng =& $excel->addFormat();
										$fecIng->setNumFormat('mm-yyyy-dd');
										
										// create format for averaged values
										/*$avg =& $excel->addFormat();
										$avg->setNumFormat('0.00');*/
										
										// add data to worksheet
										$rowCount=0;
										foreach ($data as $row) {
										  for($colCount=0; $colCount<sizeof($row); $colCount++) {
										    /*if ($rowCount == 0 && $colCount == 0) {
										      $format = 'firstRowCol';
										    } else if ($rowCount == 0) {
										        $format = 'firstRow';        
										    } else if ($colCount == 0) {
										        $format = 'firstCol';                
										    } else {
										        $format = 'num';                      
										    }*/
										    if($colCount == 11)
											{
										    	$format = 'imeiF';
											}
										    else if($colCount == 15)
											{
										    	$format = 'prodcode';
											}
										    else
											{
										    	$format = 0;//$format = 'num';
											}
											$sheet->writeString($rowCount, $colCount, $row[$colCount], $$format);  
										  }  
										  // get cell coordinates
										  $start = Spreadsheet_Excel_Writer::rowcolToCell($rowCount, 1);
										  $end = Spreadsheet_Excel_Writer::rowcolToCell($rowCount, (sizeof($row)-1));
										  // add average() formula to terminating cell of each row
										  // except the first (header) row
										  /*if ($rowCount != 0) {
										    $sheet->writeFormula($rowCount, sizeof($row), "=AVERAGE($start:$end)", $avg);     
										  } */
										  $rowCount++;
										}
										
										// save file to disk
										if ($excel->close() === true) {
											echo "<a class='linknuevo' href='informes/" . $archivo . "'>Descargar Archivo</a>";
										  //echo 'Spreadsheet successfully saved!';  
										} else {
										  echo 'ERROR: Could not save spreadsheet.';
										}
										
										/*foreach($data as $val)
										{
											foreach($val as $val1)
											{
												echo $val1 . "<br>";
											}
										}*/
										break;
									}
                        		}
                        		?>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
        </table>
	</body>
</html>